package com.shrcl.engineerprocess.domain;

import com.shrcl.engineerprocess.domain.Engineer;
import com.shrcl.engineerprocess.domain.EngineerTraining;
import com.shrcl.engineerprocess.domain.Notification;
import com.shrcl.engineerprocess.domain.impl.TrainingNotificationImpl;
import com.shrcl.engineerprocess.domain.proxy.TrainingNotificationProxy;
import edu.fudan.mylang.pf.EntityImplementation;

@EntityImplementation(implementBy = TrainingNotificationImpl.class)
public interface TrainingNotification extends Notification {
  public abstract EngineerTraining getEngineerTraining();
  
  public abstract TrainingNotification setEngineerTraining(final EngineerTraining engineerTraining);
  
  public abstract Engineer getToEngineer();
  
  public abstract TrainingNotification setToEngineer(final Engineer toEngineer);
  
  public abstract void doNotify();
  
  public abstract void init();
  
  public abstract TrainingNotificationProxy toProxy();
}
